const layer = require("./utils/layer");
App({
    globalData: {
        // notifyHost: 'ws://192.168.101.16:9999/ws', // 本地netty‘服务地址
        // host: 'http://192.168.101.16:8080', // 本地服务地址
        // notifyHost: 'ws://192.168.101.16:9999/ws', // dev netty‘服务地址
        // host: 'http://192.168.101.16:8080', // dev 本地服务地址 /websocket/
        notifyHost: 'wss://www.longzipeng.online/websocket/ws', // 线上netty‘服务地址
        host: 'https://www.longzipeng.online/wechat', // 线上服务地址
        userInfo: null // 登录的用户信息
    },
    onLaunch: function () {
        if (wx.cloud) {
            wx.cloud.init({
                traceUser: true
            })
        }
        wx.getSystemInfo({
            success: e => {
                this.globalData.StatusBar = e.statusBarHeight;
                let capsule = wx.getMenuButtonBoundingClientRect();
                if (capsule) {
                    this.globalData.Custom = capsule;
                    this.globalData.CustomBar = capsule.bottom + capsule.top - e.statusBarHeight;
                } else {
                    this.globalData.CustomBar = e.statusBarHeight + 50;
                }
            }
        })
        this.concatNotyfyServer();
    },
    /**
     * 连接通知服务器
     */
    concatNotyfyServer() {
        let that = this
        // 连接ws服务器
        wx.connectSocket({
            url: that.globalData.notifyHost,
            success(res) {
                // 初始化ws连接
                that.initNotifyServer();
            },
            fail(res) {
                console.log(res);
                console.log("连接失败");
            }
        })
    },
    /**
     * 初始化websocket连接
     */
    initNotifyServer() {
        // 处理服务端的消息
        wx.onSocketMessage(function (data) {
            console.log(data);
            if (data && data.length > 0) {
                data = JSON.parse(data)
                console.log(data);
                if (data.content) {
                    layer.showToast(data.content);
                }
            }
        })
        // 当正确回调后，才能建立连接
        wx.onSocketOpen(function (res) {
            console.log("连接成功！！");
            //  初次连接成功后，发送指定信号，建立连接
            /// 先判断是否已登录
            let userId = wx.getStorageSync("userId");
            if (userId) {
                wx.sendSocketMessage({
                    data: JSON.stringify({
                        content: userId, // 用户id
                        action: 1,
                        type: 0
                    })
                })
            }
        })
    }
})